'''内置函数复习'''

# 1.abs 取绝对值
print(abs(-123))
# 2.all() 判断可迭代对象的元素所有为0,真反true/Flase
print(all([1,23,23,2,422,78]))
print(all([]))
# 3.any() 有一个为真就为真
print(any([1,23,23,2,'huigui',422,0]))
print(any([0]))
# 4.bin() 将十进制数转为为二进制数
print((bin(1000)))
# 5.hex() 将十进制数转为为16进制数
print(hex(1000))
# 6.oct() 将十进制数转为为八进制数
print(oct(9))
# 7.bytes() 转二进制、要有编码
bytes("你好！！".encode("utf-8"))
print(bytes("你好！！".encode("utf-8")))
# 8.chr() 将数字转成ASCII码值
print(chr(97))
# 9.ord() 将ASCII码的值转换为数字
print(ord(' '))
print(ord("k"))

# 10.classmethod 类直接调用时不用传擦参数
class FOO():
    @classmethod
    def test1(self):
        print("aaa")
f1=FOO()
f1.test1()
FOO.test1()

# 11.divmod(10,3) 取商和余数
print(divmod(10,2))
# 12.enumerate 枚举/函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列，
# 同时列出数据和数据下标
dict={"name":"lisi","age":123}
for i ,j in enumerate(dict):
    print(i,j)

# 13.eval 转换字典  计算字符串列的数字表达式计算出来
print(eval('{"name":"lisi"}'))
print(eval('9/3+9**6+76/7-8**3'))
# 14.format() 序列化 如下结果是：bbbaaaccccnnnddd
print("{0}aaa{1}nnn{2}".format("bbb","cccc","ddd"))

# 15.hash() 求字符的固定长度的hash值
print(hash("sdfsf"))
# 16.isinstance(a,b) 判断a是不是b的类型
print(isinstance("js",str))
# 17.pow(a,b,c) 对a的b次方的结果除c取余数
print(pow(2,3,3))
# 18.round(2.9) 四舍五入
print(round(2.9))
# 19.super() 类的基础

# 20.zip()
a = [1,2,3]
b = [4,5,6]
c = [4,5,6,7,8]
x=zip(a,b)
print(x)
# 21.upper() 转大写
print("jfiosojf".upper())

